home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 July: Mac OS SDK / Dev.CD Jul 97 SDK1.toast / Development Kits (Disc 1) / PC Card Manager / CIncludes / TextCommon.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-01-13  |  40.3 KB  |  1,138 lines  |  [TEXT/MPS ]

  1. /*
  2.      File:        TextCommon.h
  3.  
  4.      Contains:    Definitions for common text types, values for them, and related routines 
  5.  
  6.      Version:    System 8
  7.  
  8.      DRI:        Julio Gonzalez
  9.  
  10.      Copyright:    © 1984-1996 by Apple Computer, Inc.
  11.                  All rights reserved.
  12.  
  13.      Warning:    *** APPLE INTERNAL USE ONLY ***
  14.                  This file may contain unreleased API's
  15.  
  16.      BuildInfo:    Built by:            SuperMario Build Daemon
  17.                  With Interfacer:    2.0d11   (PowerPC native)
  18.                  From:                TextCommon.i
  19.                      Revision:        13
  20.                      Dated:            3/27/96
  21.                      Last change by:    PKE
  22.                      Last comment:    Add more TextEncoding constants: kTextEncodingJIS_C6226_78,
  23.  
  24.      Bugs:        Report bugs to Radar component “System Interfaces”, “Latest”
  25.                  List the version information (from above) in the Problem Description.
  26.  
  27. */
  28. #ifndef __TEXTCOMMON__
  29. #define __TEXTCOMMON__
  30.  
  31. #ifndef __TYPES__
  32. #include <Types.h>
  33. #endif
  34.  
  35. #ifdef __cplusplus
  36. extern "C" {
  37. #endif
  38.  
  39. #if PRAGMA_IMPORT_SUPPORTED
  40. #pragma import on
  41. #endif
  42.  
  43. #if PRAGMA_ALIGN_SUPPORTED
  44. #pragma options align=mac68k
  45. #endif
  46.  
  47. #if FOR_SYSTEM7_AND_SYSTEM8_PREEMPTIVE
  48. /*
  49.     LocaleLanguageCodes are derived from the alpha-3 character codes
  50.     in ISO 639. (see comment below)
  51.     
  52.     LocaleRegionCodes are derived from the alpha-2 codes in ISO 1399. 
  53.     (see comment below)
  54.     
  55.     Apple does not maintain the contents of these lists.  For that
  56.     we rely on ISO. Additionally, Apple will not attempt to create an enumerated
  57.     type containing the ISO language and territory codes.  Instead this file
  58.     contains two very long comments containing all the codes we know of at this
  59.     point in time (Nov. 1995).  To obtain the most up to date list you will
  60.     need to contact ISO.
  61.     
  62.     LocaleLanguageCode and LocaleRegionCodes along with LocaleCustomizationCodes
  63.     are used to create LocaleIdentifiers.  LocaleIdentifiers are packed
  64.     32-bit combinations of language and region information that can be
  65.     used to tag international data.
  66.  
  67.     To create a  LocaleIdentifiers find the language you are interested in
  68.     see the long comment labeled "ISO CD 639-2 Language Codes."
  69.         
  70.     Next find the two character code that matches the territory/region you
  71.     are interested in.  These are located in the comment labeled
  72.     "Codes from ISO 3166." 
  73.     
  74.     This can then be passed to the function CreateLocaleIdentifier like 
  75.     this:
  76.         CreateLocaleIdentifier(
  77.                                 'eng',        //english
  78.                                 'AU',        //Australian
  79.                                 0
  80.                             )
  81.  
  82.     In some cases there is more than one alpha-3 symbol for a given
  83.     language.  Although, you can certainly create a LocaleIdentifier
  84.     from any of these symbols Apple has chosen preferred symbols which
  85.     will be used in Apple's localizations.  Where there are more than
  86.     one alpha-3 language symbol for a given language the preferred symbol
  87.     is the first one in the list. The second item in the list gives
  88.     both of the ISO codes.
  89.     i.e.
  90.         sqi        Albanian
  91.           alb/sqi Albanian
  92.  
  93. */
  94. typedef UInt32 LocaleIdentifier;
  95. /* Create correctly spelled versions of kSystemDefaultLocaleIdentifer and */
  96. /* kUserDefaultLocaleIdentifer.  Leave the misspelled symbols in so nobody breaks. */
  97.  
  98. enum {
  99.     kLocaleIdentifierWildCard    = 0x00000000,
  100.     kSystemDefaultLocaleIdentifer = 0x7FFFFFFF,
  101.     kSystemDefaultLocaleIdentifier = 0x7FFFFFFF,
  102.     kUserDefaultLocaleIdentifer    = 0x7EEEEEEE,
  103.     kUserDefaultLocaleIdentifier = 0x7EEEEEEE
  104. };
  105.  
  106. typedef OSType LocaleLanguageCode;
  107.  
  108. enum {
  109.     kLocaleLanguageWildCard        = 0x00000000
  110. };
  111.  
  112. typedef UInt16 LocaleRegionCode;
  113. typedef UInt16 LocaleCustomizationCode;
  114.  
  115. enum {
  116.     kLocaleRegionWildCard        = 0x0000,
  117.     kLocaleCustomizationWildCard = 0x0000
  118. };
  119.  
  120. /* TextEncodingBase type & values */
  121. /* (values 0-32 correspond to the Script Codes defined in Inside Macintosh: Text pages 6-52 and 6-53 */
  122. typedef UInt32 TextEncodingBase;
  123.  
  124. enum {
  125.                                                                 /* Mac OS encodings*/
  126.     kTextEncodingMacRoman        = 0L,
  127.     kTextEncodingMacJapanese    = 1L,
  128.     kTextEncodingMacTradChinese    = 2L,
  129.     kTextEncodingMacKorean        = 3L,
  130.     kTextEncodingMacArabic        = 4L,
  131.     kTextEncodingMacHebrew        = 5L,
  132.     kTextEncodingMacGreek        = 6L,
  133.     kTextEncodingMacCyrillic    = 7L,
  134.     kTextEncodingMacRSymbol        = 8L,
  135.     kTextEncodingMacDevanagari    = 9L,
  136.     kTextEncodingMacGurmukhi    = 10L,
  137.     kTextEncodingMacGujarati    = 11L,
  138.     kTextEncodingMacOriya        = 12L,
  139.     kTextEncodingMacBengali        = 13L,
  140.     kTextEncodingMacTamil        = 14L,
  141.     kTextEncodingMacTelugu        = 15L,
  142.     kTextEncodingMacKannada        = 16L,
  143.     kTextEncodingMacMalayalam    = 17L,
  144.     kTextEncodingMacSinhalese    = 18L,
  145.     kTextEncodingMacBurmese        = 19L,
  146.     kTextEncodingMacKhmer        = 20L,
  147.     kTextEncodingMacThai        = 21L,
  148.     kTextEncodingMacLaotian        = 22L,
  149.     kTextEncodingMacGeorgian    = 23L,
  150.     kTextEncodingMacArmenian    = 24L,
  151.     kTextEncodingMacSimpChinese    = 25L,
  152.     kTextEncodingMacTibetan        = 26L,
  153.     kTextEncodingMacMongolian    = 27L,
  154.     kTextEncodingMacGeez        = 28L,
  155.     kTextEncodingMacEastEurRoman = 29,
  156.     kTextEncodingMacCentralEurRoman = 29,
  157.     kTextEncodingMacVietnamese    = 30,
  158.     kTextEncodingMacExtArabic    = 31,
  159.     kTextEncodingMacUninterp    = 32,
  160.     kTextEncodingMacSymbol        = 33,
  161.     kTextEncodingMacDingbats    = 34,
  162.     kTextEncodingMacTurkish        = 35,
  163.     kTextEncodingMacCroatian    = 36,
  164.     kTextEncodingMacIcelandic    = 37,
  165.     kTextEncodingMacRomanian    = 38,
  166.     kTextEncodingMacUkrainian    = 152,
  167.     kTextEncodingMacBulgarian    = 153,
  168.     kTextEncodingMacHFS            = 0xFF,                            /* Meta-value, should never appear in a table.*/
  169.                                                                 /* Unicode & ISO UCS encodings begin at 0x100*/
  170.     kTextEncodingUnicodeDefault    = 0x0100,                        /* Meta-value, should never appear in a table.*/
  171.     kTextEncodingUnicodeV1_1    = 0x0101,
  172.     kTextEncodingISO10646_1993    = 0x0102,                        /* can have UCS4 format (Unicode can't)*/
  173.                                                                 /* ISO 8-bit and 7-bit encodings begin at 0x200*/
  174.     kTextEncodingISOLatin1        = 0x0201,                        /* ISO 8859-1*/
  175.     kTextEncodingISOLatin2        = 0x0202,                        /* ISO 8859-2*/
  176.     kTextEncodingISOLatinCyrillic = 0x0205,                        /* ISO 8859-5*/
  177.     kTextEncodingISOLatinArabic    = 0x0206,                        /* ISO 8859-6, = ASMO 708, =DOS CP 708*/
  178.     kTextEncodingISOLatinGreek    = 0x0207,                        /* ISO 8859-7*/
  179.     kTextEncodingISOLatinHebrew    = 0x0208,                        /* ISO 8859-8*/
  180.     kTextEncodingISOLatin5        = 0x0209,                        /* ISO 8859-9*/
  181.                                                                 /* MS-DOS & Windows encodings begin at 0x400*/
  182.     kTextEncodingDOSLatinUS        = 0x0400,                        /* code page 437*/
  183.     kTextEncodingDOSGreek        = 0x0405,                        /* code page 737 (formerly code page 437G)*/
  184.     kTextEncodingDOSBalticRim    = 0x0406,                        /* code page 775*/
  185.     kTextEncodingDOSLatin1        = 0x0410,                        /* code page 850, "Multilingual"*/
  186.     kTextEncodingDOSGreek1        = 0x0411,                        /* code page 851*/
  187.     kTextEncodingDOSLatin2        = 0x0412,                        /* code page 852, Slavic*/
  188.     kTextEncodingDOSCyrillic    = 0x0413,                        /* code page 855, IBM Cyrillic*/
  189.     kTextEncodingDOSTurkish        = 0x0414,                        /* code page 857, IBM Turkish*/
  190.     kTextEncodingDOSPortuguese    = 0x0415,                        /* code page 860*/
  191.     kTextEncodingDOSIcelandic    = 0x0416,                        /* code page 861*/
  192.     kTextEncodingDOSHebrew        = 0x0417,                        /* code page 862*/
  193.     kTextEncodingDOSCanadianFrench = 0x0418,                    /* code page 863*/
  194.     kTextEncodingDOSArabic        = 0x0419,                        /* code page 864*/
  195.     kTextEncodingDOSNordic        = 0x041A,                        /* code page 865*/
  196.     kTextEncodingDOSRussian        = 0x041B,                        /* code page 866*/
  197.     kTextEncodingDOSGreek2        = 0x041C,                        /* code page 869, IBM Modern Greek*/
  198.     kTextEncodingDOSThai        = 0x041D,                        /* code page 874, also used for Windows*/
  199.     kTextEncodingDOSJapanese    = 0x0420,                        /* code page 932, also used for Windows*/
  200.     kTextEncodingDOSChineseSimplif = 0x0421,                    /* code page 936, also used for Windows*/
  201.     kTextEncodingDOSKorean        = 0x0422,                        /* code page 949, also used for Windows*/
  202.     kTextEncodingDOSChineseTrad    = 0x0423,                        /* code page 950, also used for Windows*/
  203.     kTextEncodingWindowsLatin1    = 0x0500,                        /* code page 1252*/
  204.     kTextEncodingWindowsANSI    = 0x0500,                        /* code page 1252 (alternate name)*/
  205.     kTextEncodingWindowsLatin2    = 0x0501,                        /* code page 1250, Central Europe*/
  206.     kTextEncodingWindowsCyrillic = 0x0502,                        /* code page 1251, Slavic Cyrillic*/
  207.     kTextEncodingWindowsGreek    = 0x0503,                        /* code page 1253*/
  208.     kTextEncodingWindowsLatin5    = 0x0504,                        /* code page 1254, Turkish*/
  209.     kTextEncodingWindowsHebrew    = 0x0505,                        /* code page 1255*/
  210.     kTextEncodingWindowsArabic    = 0x0506,                        /* code page 1256*/
  211.     kTextEncodingWindowsBalticRim = 0x0507,                        /* code page 1257*/
  212.                                                                 /* Various national standards begin at 0x600*/
  213.     kTextEncodingUS_ASCII        = 0x0600,
  214.     kTextEncodingJIS_X0201_76    = 0x0620,
  215.     kTextEncodingJIS_X0208_83    = 0x0621,
  216.     kTextEncodingJIS_X0208_90    = 0x0622,
  217.     kTextEncodingJIS_X0212_90    = 0x0623,
  218.     kTextEncodingJIS_C6226_78    = 0x0624,
  219.     kTextEncodingGB_2312_80        = 0x0630,
  220.     kTextEncodingKSC_5601_87    = 0x0640,
  221.     kTextEncodingKSC_5601_92    = 0x0641,                        /* ISO 2022 collections begin at 0x800*/
  222.     kTextEncodingISO_2022_JP    = 0x0820,
  223.     kTextEncodingISO_2022_JP_2    = 0x0821,
  224.     kTextEncodingISO_2022_KR    = 0x0840,                        /* EUC collections begin at 0x900*/
  225.     kTextEncodingEUC_JP            = 0x0920,
  226.     kTextEncodingEUC_KR            = 0x0940,                        /* Other defacto standards begin at 0xA00*/
  227.     kTextEncodingShiftJIS        = 0x0A01,                        /* plain Shift-JIS*/
  228.     kTextEncodingKOI8_R            = 0x0A02                        /* Russian internet standard*/
  229. };
  230.  
  231. /* TextEncodingVariant type & values */
  232. typedef UInt32 TextEncodingVariant;
  233.  
  234. enum {
  235.                                                                 /* Default TextEncodingVariant, for any TextEncodingBase*/
  236.     kTextEncodingDefaultVariant    = 0,                            /* Variants of kTextEncodingMacJapanese*/
  237.     kJapaneseStandardVariant    = 0,
  238.     kJapaneseStdNoVerticalsVariant = 1,
  239.     kJapaneseBasicVariant        = 2,
  240.     kJapanesePostScriptScrnVariant = 3,
  241.     kJapanesePostScriptPrintVariant = 4,
  242.     kJapaneseVertAtKuPlusTenVariant = 5,
  243.     kJapaneseStdNoOneByteKanaVariant = 6,
  244.     kJapaneseBasicNoOneByteKanaVariant = 7,                        /* Variants of kTextEncodingMacHebrew*/
  245.     kHebrewStandardVariant        = 0,
  246.     kHebrewFigureSpaceVariant    = 1,                            /* Variants of kTextEncodingUnicodeV1_1*/
  247.     kUnicodeNoSubset            = 0,
  248.     kUnicodeNoCompatibilityVariant = 1,
  249.     kUnicodeMaxDecomposedVariant = 2,
  250.     kUnicodeNoComposedVariant    = 3
  251. };
  252.  
  253. /* TextEncodingFormat type & values */
  254. typedef UInt32 TextEncodingFormat;
  255.  
  256. enum {
  257.                                                                 /* Default TextEncodingFormat for Any TextEncodingBase*/
  258.     kTextEncodingDefaultFormat    = 0,                            /* Formats for kTextEncodingUnicodeV1_1*/
  259.     kUnicode16BitFormat            = 0,
  260.     kUnicodeUTF7Format            = 1,
  261.     kUnicodeUTF8Format            = 2,                            /* Formats for kTextEncodingISO10646_1993*/
  262.     kISO10646UCS2Format            = 0
  263. };
  264.  
  265. /* TextEncoding type */
  266. typedef UInt32 TextEncoding;
  267. /* enums for TextEncoding Conversion routines */
  268.  
  269. enum {
  270.     kTextScriptDontCare            = -128,
  271.     kTextLanguageDontCare        = -128,
  272.     kTextRegionDontCare            = -128
  273. };
  274.  
  275. /* Character Group and Class */
  276. typedef UInt8 CharacterGroup;
  277.  
  278. enum {
  279.     kCharGroupAny                = 0,                            /* wildcard*/
  280.     kCharGroupControl            = 1,
  281.     kCharGroupCommon            = 2,
  282.     kCharGroupRomanNumeral        = 4,
  283.     kCharGroupLatin                = 8,
  284.     kCharGroupGreek                = 9,
  285.     kCharGroupCyrillic            = 10,
  286.     kCharGroupArmenian            = 11,
  287.     kCharGroupHebrew            = 12,
  288.     kCharGroupArabic            = 13,
  289.     kCharGroupIndicCommon        = 14,
  290.     kCharGroupDevanagari        = 15,
  291.     kCharGroupBengali            = 16,
  292.     kCharGroupGurmukhi            = 17,
  293.     kCharGroupGujarati            = 18,
  294.     kCharGroupOriya                = 19,
  295.     kCharGroupTamil                = 20,
  296.     kCharGroupTelugu            = 21,
  297.     kCharGroupKannada            = 22,
  298.     kCharGroupMalayalam            = 23,
  299.     kCharGroupSinhala            = 24,
  300.     kCharGroupThai                = 25,
  301.     kCharGroupLao                = 26,
  302.     kCharGroupBurmese            = 27,
  303.     kCharGroupKhmer                = 28,
  304.     kCharGroupTibetan            = 29,
  305.     kCharGroupMongolian            = 30,
  306.     kCharGroupGeorgian            = 31,
  307.     kCharGroupEthiopic            = 32,
  308.     kCharGroupCJKCommon            = 48,
  309.     kCharGroupJapaneseCommon    = 49,
  310.     kCharGroupKanaCommon        = 50,
  311.     kCharGroupHiragana            = 51,
  312.     kCharGroupKatakana            = 52,
  313.     kCharGroupBopomofo            = 53,
  314.     kCharGroupJamoHangul        = 54,
  315.     kCharGroupCJKIdeograph        = 55,
  316.     kCharGroupUserDefined        = 62
  317. };
  318.  
  319. typedef UInt8 CharacterSubgroup;
  320. typedef UInt8 CharacterClass;
  321.  
  322. enum {
  323.     kCharClassAny                = 0,                            /* wildcard*/
  324.     kCharClassLetter            = 1,
  325.     kCharClassNumber            = 2,
  326.     kCharClassSeparator            = 3,
  327.     kCharClassPunctuation        = 4,
  328.     kCharClassSymbol            = 5,
  329.     kCharClassControl            = 6,
  330.     kCharClassUndefined            = 7
  331. };
  332.  
  333. typedef UInt8 CharacterSubclass;
  334. /* subclass wildcard for all classes*/
  335.  
  336. enum {
  337.     kCharSubclassAny            = 0
  338. };
  339.  
  340. /* subclasses for class letter*/
  341.  
  342. enum {
  343.     kCharSubclassLetterBasic    = 1,
  344.     kCharSubclassLetterModifier    = 2,
  345.     kCharSubclassLetterCombining = 3,
  346.     kCharSubclassLetterWordAbbrev = 4
  347. };
  348.  
  349. /* subclasses for class number*/
  350.  
  351. enum {
  352.     kCharSubclassNumberBasic    = 1,
  353.     kCharSubclassNumberFraction    = 2
  354. };
  355.  
  356. /* subclasses for class separator*/
  357.  
  358. enum {
  359.     kCharSubclassSeparatorSpace    = 1,
  360.     kCharSubclassSeparatorNoBreak = 2,
  361.     kCharSubclassSeparatorTab    = 3,
  362.     kCharSubclassSeparatorLineBreak = 4
  363. };
  364.  
  365. /* subclasses for class symbol*/
  366.  
  367. enum {
  368.     kCharSubclassSymbolOther    = 1,
  369.     kCharSubclassSymbolMath        = 2,
  370.     kCharSubclassSymbolCurrency    = 3,
  371.     kCharSubclassSymbolCombining = 4
  372. };
  373.  
  374. typedef UInt16 CharacterSubclassMask;
  375.  
  376. enum {
  377.     kCharLetterBasicMask        = 1 << kCharSubclassLetterBasic,
  378.     kCharLetterModifierMask        = 1 << kCharSubclassLetterModifier,
  379.     kCharLetterCombiningMask    = 1 << kCharSubclassLetterCombining,
  380.     kCharLetterWordAbbrevMask    = 1 << kCharSubclassLetterWordAbbrev,
  381.     kCharNumberBasicMask        = 1 << kCharSubclassNumberBasic,
  382.     kCharNumberFractionMask        = 1 << kCharSubclassNumberFraction,
  383.     kCharSeparatorSpaceMask        = 1 << kCharSubclassSeparatorSpace,
  384.     kCharSeparatorNoBreakMask    = 1 << kCharSubclassSeparatorNoBreak,
  385.     kCharSeparatorTabMask        = 1 << kCharSubclassSeparatorTab,
  386.     kCharSeparatorLineBreakMask    = 1 << kCharSubclassSeparatorLineBreak,
  387.     kCharSymbolOtherMask        = 1 << kCharSubclassSymbolOther,
  388.     kCharSymbolMathMask            = 1 << kCharSubclassSymbolMath,
  389.     kCharSymbolCurrencyMask        = 1 << kCharSubclassSymbolCurrency
  390. };
  391.  
  392. /* Prototypes for LocaleIdentifier functions */
  393. extern LocaleIdentifier CreateLocaleIdentifier(LocaleLanguageCode language, LocaleRegionCode region, LocaleCustomizationCode customization);
  394.  
  395. extern LocaleLanguageCode GetLocaleLanguage(LocaleIdentifier identifier);
  396.  
  397. extern LocaleRegionCode GetLocaleRegion(LocaleIdentifier identifier);
  398.  
  399. extern LocaleCustomizationCode GetLocaleCustomization(LocaleIdentifier identifier);
  400.  
  401. /* Prototypes for TextEncoding functions */
  402. extern pascal TextEncoding CreateTextEncoding(TextEncodingBase encodingBase, TextEncodingVariant encodingVariant, TextEncodingFormat encodingFormat)
  403.  THREEWORDINLINE(0x303C, 0x0615, 0xABCE);
  404.  
  405. extern pascal TextEncodingBase GetTextEncodingBase(TextEncoding encoding)
  406.  THREEWORDINLINE(0x303C, 0x0216, 0xABCE);
  407.  
  408. extern pascal TextEncodingVariant GetTextEncodingVariant(TextEncoding encoding)
  409.  THREEWORDINLINE(0x303C, 0x0217, 0xABCE);
  410.  
  411. extern pascal TextEncodingFormat GetTextEncodingFormat(TextEncoding encoding)
  412.  THREEWORDINLINE(0x303C, 0x0218, 0xABCE);
  413.  
  414. #endif
  415. #if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
  416. extern pascal OSStatus UpgradeScriptInfoToTextEncoding(ScriptCode textScriptID, LangCode textLanguageID, RegionCode regionID, ConstStr255Param textFontname, TextEncoding *encoding)
  417.  THREEWORDINLINE(0x303C, 0x0710, 0xABCE);
  418.  
  419. extern pascal OSStatus RevertTextEncodingToScriptInfo(TextEncoding encoding, ScriptCode *textScriptID, LangCode *textLanguageID, Str255 textFontname)
  420.  THREEWORDINLINE(0x303C, 0x0811, 0xABCE);
  421.  
  422. #endif
  423. #if FOR_SYSTEM8_COOPERATIVE
  424. extern OSStatus UpgradeScriptInfoToLocaleIdentifier(ScriptCode script, LangCode language, RegionCode region, ConstStr255Param fontName, LocaleIdentifier *identifier);
  425.  
  426. extern OSStatus RevertLocaleIdentifierToScriptInfo(LocaleIdentifier identifier, ScriptCode *script, LangCode *language, Str255 fontName);
  427.  
  428. #endif
  429. #if FOR_SYSTEM7_AND_SYSTEM8_PREEMPTIVE
  430. typedef FourCharCode CharPropertyType;
  431.  
  432. enum {
  433.     kCharPropertyTypeFlags        = 'flag',
  434.     kCharPropertyTypeClass        = 'clas',
  435.     kCharPropertyTypeGroup        = 'grup',
  436.     kCharPropertyTypeDirection    = 'dirc',
  437.     kCharPropertyTypeReorderPri    = 'reor',
  438.     kCharPropertyTypeToken        = 'tokn',
  439.     kCharPropertyTypeCtypes        = 'ctyp'
  440. };
  441.  
  442. typedef UInt32 CharPropertyValue;
  443. extern OSStatus GetCharacterProperties(BytePtr charPtr, TextEncoding encoding, ItemCount propertyCount, CharPropertyType typeList[], CharPropertyValue valueList[]);
  444.  
  445. #endif
  446. /*
  447. ----------------------------------------------------------------------------
  448.  
  449. ISO CD 639-2 Language Codes
  450.  
  451. ----------------------------------------------------------------------------
  452.  
  453. This is a extract of a paper called ISO CD 639/2 Draft Proposal, titled
  454. "Code for the representation of names of languages, alpha-3 code" dated
  455. 12/16/91.
  456.  
  457.    * Typed in by Keld.Simonsen@dkuug.dk 1993-11-11
  458.  
  459.   Table 3
  460.   Alpha-3 symbols arranged alphabetically by symbol
  461.  
  462.   Symbol  Language name
  463.  
  464.   abk     Abkhazian
  465.   ace     Achinese
  466.   ach     Acoli
  467.   ada     Adangme
  468.   aar     Afar
  469.   afr     Africaans
  470.   afh     Afrihili
  471.   afa     Afro-Asiatic (Other)
  472.   aka     Akan
  473.   akk     Akkadian
  474.   sqi      Albanian
  475.   alb/sqi Albanian
  476.   ale     Aleut
  477.   alg     Algonquian languages
  478.   ajm     Aljamia
  479.   tut     Altaic (Other)
  480.   amh     Amharic
  481.   apa     Apache languages
  482.   ara     Arabic
  483.   arc     Aramaic
  484.   arp     Arapaho
  485.   arn     Araucanian
  486.   arw     Arawak
  487.   hye     Armenian
  488.   hye/arm Armenian
  489.   art     Artificial (Other)
  490.   asm     Assamese
  491.   ath     Athapascan languages
  492.   map     Austronesian (Other)
  493.   ava     Avaric
  494.   ave     Avestan
  495.   awa     Awandhi
  496.   aym     Aymara
  497.   aze     Azerbaijani
  498.   nah     Aztec
  499.   ban     Balinese
  500.   bat     Baltic (Other)
  501.   bal     Baluchi
  502.   bam     Bambara
  503.   bai     Bamileke languages
  504.   bad     Banda
  505.   bas     Basa
  506.   bak     Bashkir
  507.   eus     Basque
  508.   baq/eus Basque
  509.   bej     Beja
  510.   bem     Bemba
  511.   ben     Bengali
  512.   ber     Berber languages
  513.   bho     Bhojpuri
  514.   bih     Bihari
  515.   bik     Bikol
  516.   bin     Bini
  517.   bis     Bislama
  518.   bra     Braj
  519.   bre     Breton
  520.   bug     Buginese
  521.   bul     Bulgarian
  522.   mya     Burmese
  523.   bur/mya Burmese
  524.   bel     Byelorussian
  525.   cad     Caddo
  526.   car     Carib
  527.   cat     Catalan
  528.   cau     Caucasian (Other)
  529.   ceb     Cebuano
  530.   cel     Celtic (Other)
  531.   cai     Central American Indian (Other)
  532.   chg     Chagatai
  533.   cha     Chamorro
  534.   che     Chechen
  535.   chr     Cherokee
  536.   chy     Cheyenne
  537.   chb     Chibcha
  538.   zho     Chinese
  539.   zho/chi Chinese
  540.   chn     Chinook jargon
  541.   cho     Choctaw
  542.   chu     Church Slavic
  543.   chv     Chuvash
  544.   cop     Coptic
  545.   cor     Cornish
  546.   cos     Corsican
  547.   cre     Cree
  548.   mus     Creek
  549.   cpe     Creoles and pidgins, English-based (Other)
  550.   crp     Creoles and pidgins (Other)
  551.   cpp     Creoles and pidgins, Portuguese-based (Other)
  552.   cpf     Creoles and pidgins, French-based (Other)
  553.   cus     Cushitic (Other)
  554.   ces     Czech
  555.   ces/cze Czeck
  556.   dak     Dakota
  557.   dan     Danish
  558.   del     Delaware
  559.   din     Dinka
  560.   doi     Dogri
  561.   dra     Dravidian (Other)
  562.   dua     Duala
  563.   nld     Dutch
  564.   dut/nld Dutch
  565.   dum     Dutch, Middle (ca. 1050-1350)
  566.   dyu     Dyula
  567.   dzo     Dzongkha
  568.   efi     Efik
  569.   egy     Egyptian (Ancient)
  570.   eka     Ekajuk
  571.   elx     Elamite
  572.   eng     English
  573.   enm     English, Middle (1100-1500)
  574.   ang     English, Old (ca. 450-1100)
  575.   esk     Eskimo (Other)
  576.   epo     Esperanto
  577.   est     Estonian
  578.   eth     Ethiopic
  579.   ewe     Ewe
  580.   ewo     Ewondo
  581.   fan     Fang
  582.   fat     Fanti
  583.   fao     Faroese
  584.   fij     Fijian
  585.   fin     Finnish
  586.   fiu     Finno-Ugrian (Other)
  587.   fon     Fon
  588.   fra     French
  589.   fra/fre French
  590.   fro     French, Old (ca. 842-1400)
  591.   frm     French, Middel (ca. 1400-1600)
  592.   fry     Friesian
  593.   ful     Fulah
  594.   gaa     Ga
  595.   gdh     Gaelic (Scots)
  596.   gdh/gae Gaelic (Scots)
  597.   glg     Gallegan
  598.   lug     Ganda
  599.   gay     Gayo
  600.   kat     Georgian
  601.   geo/kat Georgian
  602.   deu     German
  603.   ger/deu German
  604.   goh     German, Old High (ca. 750-1050)
  605.   gmh     German, Middle High (ca. 1050-1500)
  606.   gem     Germanic (Other)
  607.   gil     Gilbertese
  608.   gon     Gondi
  609.   got     Gothic
  610.   grb     Grebo
  611.   ell     Greek, Modern (1453- )
  612.   gre/ell Greek, Modern (1453- )
  613.   grc     Greek, Ancient (to 1453)
  614.   kal     Greenlandic
  615.   grn     Guarani
  616.   guj     Gujarati
  617.   hai     Haida
  618.   hau     Hausa
  619.   haw     Hawaiian
  620.   heb     Hebrew
  621.   her     Herero
  622.   hil     Hiligaynon
  623.   him     Himachali
  624.   hin     Hindi
  625.   hmo     Hiri Motu
  626.   hun     Hungarian
  627.   hup     Hupa
  628.   iba     Iban
  629.   isl     Icelandic
  630.   ice/isl Icelandic
  631.   ibo     Igbo
  632.   ijo     Ijo
  633.   ilo     Iloko
  634.   inc     Indic (Other)
  635.   ine     Indo-European (Other)
  636.   ind     Indonesian
  637.   ina     Interlingua (International Auxilary Language Association)
  638.   ile     Interlingue
  639.   iku     Inuktitut
  640.   ipk     Inupiak
  641.   ira     Iranian (Other)
  642.   gai     Irish
  643.   iri/gai Irish
  644.   iro     Iroquoian languages
  645.   ita     Italian
  646.   jpn     Japanese
  647.   jaw     Javanese
  648.   jav/jaw Javanese
  649.   jrb     Judeo-Arabic
  650.   jpr     Judeo-Persian
  651.   kab     Kabyle
  652.   kac     Kachin
  653.   kam     Kamba
  654.   kan     Kannada
  655.   kau     Kanuri
  656.   kaa     Kara-Kalpak
  657.   kar     Karen
  658.   kas     Kashmiri
  659.   kaw     Kawi
  660.   kaz     Kazakh
  661.   kha     Khasi
  662.   khm     Khmer
  663.   khi     Khoisan (Other)
  664.   kho     Khotanese
  665.   kik     Kikuyu
  666.   kin     Kinyarwanda
  667.   kir     Kirghiz
  668.   kon     Kongo
  669.   kok     Konkani
  670.   kor     Korean
  671.   kpe     Kpelle
  672.   kro     Kru
  673.   kua     Kuanyama
  674.   kur     Kurdish
  675.   kru     Kurukh
  676.   kus     Kusaie
  677.   kut     Kutenai
  678.   lad     Ladino
  679.   lah     Lahnda
  680.   lam     Lamba
  681.   oci     Langue d'oc (post 1500)
  682.   lao     Lao
  683.   lap     Lapp languages
  684.   lat     Latin
  685.   lav     Latvian
  686.   lin     Lingala
  687.   lit     Lithuanian
  688.   loz     Lozi
  689.   lub     Luba-Katanga
  690.   lui     Luiseno
  691.   lun     Lunda
  692.   luo     Luo (Kenya and Tanzania)
  693.   mke     Macedonian
  694.   mac/mke Macedonian
  695.   mad     Madurese
  696.   mag     Magahi
  697.   mai     Maithili
  698.   mak     Makasar
  699.   mlg     Malagasy
  700.   msa     Malay
  701.   may/msa Malay
  702.   mal     Malayalam
  703.   mlt     Maltese
  704.   man     Mandingo
  705.   mni     Manipuri
  706.   mno     Manobo languages
  707.   max     Manx
  708.   mri     Maori
  709.   mri/mao Maori
  710.   mar     Marathi
  711.   mah     Marshall
  712.   mwr     Marwari
  713.   mas     Masai
  714.   myn     Mayan languages
  715.   men     Mende
  716.   mic     Micmac
  717.   min     Minangkabau
  718.   mis     Miscellaneous (Other)
  719.   moh     Mohawk
  720.   mol     Moldavian
  721.   mkh     Mon-Khmer (Other)
  722.   lol     Mongo
  723.   mon     Mongolian
  724.   mos     Mossi
  725.   mul     Multiple languages
  726.   mun     Munda (Other)
  727.   nau     Nauru
  728.   nav     Navajo
  729.   nde     Ndebele (Zimbabwe)
  730.   ndo     Ndonga
  731.   nep     Nepali
  732.   new     Newari
  733.   nic     Niger-Kordofanian (Other)
  734.   ssa     Nilo-Saharan (Other)
  735.   niu     Niuean
  736.   nai     North American Indian (Other)
  737.   nso     Northern Sohto
  738.   nor     Norwegian
  739.   nub     Nubian languages
  740.   nym     Nyamwezi
  741.   nya     Nyanja
  742.   nyn     Nyankole
  743.   nyo     Nyoro
  744.   nzi     Nzima
  745.   oji     Ojibwa
  746.   non     Old Norse
  747.   peo     Old Persian (ca. 600-400 B.C.)
  748.   ori     Oriya
  749.   orm     Oromo
  750.   osa     Osage
  751.   oss     Ossetic
  752.   oto     Otomian languages
  753.   pal     Pahlavi
  754.   pau     Palauan
  755.   pli     Pali
  756.   pam     Pampanga
  757.   pag     Pangasinan
  758.   pan     Panjabi
  759.   pap     Papiamento
  760.   paa     Papuan-Australian (Other)
  761.   fas     Persian
  762.   fas/per Persian
  763.   pol     Polish
  764.   pon     Ponape
  765.   por     Portuguese
  766.   pra     Prakrit languages
  767.   pro     Provencal, Old (to 1500)
  768.   pus     Pushto
  769.   que     Quechua
  770.   roh     Raeto-Romance
  771.   raj     Rajasthani
  772.   rar     Rarotongan
  773.   roa     Romance (Other)
  774.   rum     Romanian
  775.   ron/rum Romanian
  776.   rom     Romany
  777.   run     Rundi
  778.   rus     Russian
  779.   sal     Salishan languages
  780.   sam     Samaritan Aramaic
  781.   smo     Samoan
  782.   sad     Sandawe
  783.   sag     Sango
  784.   san     Sanskrit
  785.   sco     Scots
  786.   sel     Selkup
  787.   sem     Semitic (Other)
  788.   scr     Serbo-Croatian
  789.   srr     Serer
  790.   shn     Shan
  791.   sna     Shona
  792.   sid     Sidamo
  793.   bla     Siksika
  794.   snd     Sindhi
  795.   sin     Sinhalese
  796.   sit     Sino-Tibetan (Other)
  797.   sio     Siouan languages
  798.   sla     Slavic (Other)
  799.   slk     Slovak
  800.   slo/slk Slovak
  801.   slv     Slovenian
  802.   sog     Sogdian
  803.   som     Somali
  804.   son     Songhai
  805.   wen     Sorbian languages
  806.   sot     Sotho
  807.   sai     South American Indian (Other)
  808.   esl     Spanish
  809.   esl/spa Spanish
  810.   suk     Sukuma
  811.   sux     Sumerian
  812.   sun     Sundanese
  813.   sus     Susu
  814.   swa     Swahili
  815.   ssw     Swazi
  816.   sve     Swedish
  817.   swe/sve Swedish
  818.   syr     Syriac
  819.   tgl     Tagalog
  820.   tah     Tahitian
  821.   tgk     Tajik
  822.   tam     Tamil
  823.   tat     Tatar
  824.   tel     Telugu
  825.   ter     Tereno
  826.   tha     Thai
  827.   bod     Tibetan
  828.   tib/bod Tibetan
  829.   tig     Tigre
  830.   tir     Tigrinya
  831.   tem     Timne
  832.   tiv     Tivi
  833.   tli     Tlingit
  834.   ton     Tonga (Tonga Islands)
  835.   tog     Tonga (Nyasa)
  836.   tru     Truk
  837.   tsi     Tsimshian
  838.   tso     Tsonga
  839.   tsn     Tswana
  840.   tum     Tumbuka
  841.   tur     Turkish
  842.   ota     Turkish, Ottoman
  843.   tuk     Turkmen
  844.   twi     Twi
  845.   uga     Ugaritic
  846.   uig     Uighur
  847.   ukr     Ukrainian
  848.   umb     Umbundu
  849.   und     Undetermined
  850.   urd     Urdu
  851.   uzb     Uzbek
  852.   vai     Vai
  853.   ven     Venda
  854.   vie     Vietnamese
  855.   vol     Volapuk
  856.   vot     Votic
  857.   wak     Wakashan languages
  858.   wal     Walamo
  859.   war     Waray
  860.   was     Washo
  861.   cym       Welsh
  862.   cym/wel Welsh
  863.   wol     Wolof
  864.   xho     Xhosa
  865.   yao     Yao
  866.   yap     Yap
  867.   yid     Yiddish
  868.   yor     Yoruba
  869.   zap     Zapotec
  870.   zen     Zenaga
  871.   zha     Zhuang
  872.   zul     Zulu
  873.   zun     Zuni
  874. */
  875. /*
  876.  
  877. Codes from ISO 3166 
  878.  
  879. Updated by the RIPE Network Coordination Centre, in coordination with
  880. the ISO 3166 Maintenance Agency, Berlin
  881.  
  882. Country                                         A 2     A 3     Number
  883. ----------------------------------------------------------------------
  884. AFGHANISTAN                                     AF      AFG     004
  885. ALBANIA                                         AL      ALB     008
  886. ALGERIA                                         DZ      DZA     012
  887. AMERICAN SAMOA                                  AS      ASM     016
  888. ANDORRA                                         AD      AND     020
  889. ANGOLA                                          AO      AGO     024
  890. ANGUILLA                                        AI      AIA     660
  891. ANTARCTICA                                      AQ      ATA     010
  892. ANTIGUA AND BARBUDA                             AG      ATG     028
  893. ARGENTINA                                       AR      ARG     032
  894. ARMENIA                                         AM      ARM     051  
  895. ARUBA                                           AW      ABW     533
  896. AUSTRALIA                                       AU      AUS     036
  897. AUSTRIA                                         AT      AUT     040
  898. AZERBAIJAN                                      AZ      AZE     031  
  899. BAHAMAS                                         BS      BHS     044
  900. BAHRAIN                                         BH      BHR     048
  901. BANGLADESH                                      BD      BGD     050
  902. BARBADOS                                        BB      BRB     052
  903. BELARUS                                         BY      BLR     112  
  904. BELGIUM                                         BE      BEL     056
  905. BELIZE                                          BZ      BLZ     084
  906. BENIN                                           BJ      BEN     204
  907. BERMUDA                                         BM      BMU     060
  908. BHUTAN                                          BT      BTN     064
  909. BOLIVIA                                         BO      BOL     068
  910. BOSNIA AND HERZEGOWINA                          BA      BIH     070
  911. BOTSWANA                                        BW      BWA     072
  912. BOUVET ISLAND                                   BV      BVT     074
  913. BRAZIL                                          BR      BRA     076
  914. BRITISH INDIAN OCEAN TERRITORY                  IO      IOT     086
  915. BRUNEI DARUSSALAM                               BN      BRN     096
  916. BULGARIA                                        BG      BGR     100
  917. BURKINA FASO                                    BF      BFA     854
  918. BURUNDI                                         BI      BDI     108
  919. CAMBODIA                                        KH      KHM     116
  920. CAMEROON                                        CM      CMR     120
  921. CANADA                                          CA      CAN     124
  922. CAPE VERDE                                      CV      CPV     132
  923. CAYMAN ISLANDS                                  KY      CYM     136
  924. CENTRAL AFRICAN REPUBLIC                        CF      CAF     140
  925. CHAD                                            TD      TCD     148
  926. CHILE                                           CL      CHL     152
  927. CHINA                                           CN      CHN     156
  928. CHRISTMAS ISLAND                                CX      CXR     162
  929. COCOS (KEELING) ISLANDS                         CC      CCK     166
  930. COLOMBIA                                        CO      COL     170
  931. COMOROS                                         KM      COM     174
  932. CONGO                                           CG      COG     178
  933. COOK ISLANDS                                    CK      COK     184
  934. COSTA RICA                                      CR      CRI     188
  935. COTE D'IVOIRE                                   CI      CIV     384
  936. CROATIA (local name: Hrvatska)                  HR      HRV     191      
  937. CUBA                                            CU      CUB     192
  938. CYPRUS                                          CY      CYP     196
  939. CZECH REPUBLIC                                  CZ      CZE     203  
  940. DENMARK                                         DK      DNK     208
  941. DJIBOUTI                                        DJ      DJI     262
  942. DOMINICA                                        DM      DMA     212
  943. DOMINICAN REPUBLIC                              DO      DOM     214
  944. EAST TIMOR                                      TP      TMP     626
  945. ECUADOR                                         EC      ECU     218
  946. EGYPT                                           EG      EGY     818
  947. EL SALVADOR                                     SV      SLV     222
  948. EQUATORIAL GUINEA                               GQ      GNQ     226
  949. ERITREA                                        ER       ERI    232
  950. ESTONIA                                         EE      EST     233  
  951. ETHIOPIA                                        ET      ETH     210
  952. FALKLAND ISLANDS (MALVINAS)                     FK      FLK     238
  953. FAROE ISLANDS                                   FO      FRO     234
  954. FIJI                                            FJ      FJI     242
  955. FINLAND                                         FI      FIN     246
  956. FRANCE                                          FR      FRA     250
  957. FRANCE, METROPOLITAN                            FX      FXX     249  
  958. FRENCH GUIANA                                   GF      GUF     254
  959. FRENCH POLYNESIA                                PF      PYF     258
  960. FRENCH SOUTHERN TERRITORIES                     TF      ATF     260
  961. GABON                                           GA      GAB     266
  962. GAMBIA                                          GM      GMB     270
  963. GEORGIA                                         GE      GEO     268  
  964. GERMANY                                         DE      DEU     276
  965. GHANA                                           GH      GHA     288
  966. GIBRALTAR                                       GI      GIB     292
  967. GREECE                                          GR      GRC     300
  968. GREENLAND                                       GL      GRL     304
  969. GRENADA                                         GD      GRD     308
  970. GUADELOUPE                                      GP      GLP     312
  971. GUAM                                            GU      GUM     316
  972. GUATEMALA                                       GT      GTM     320
  973. GUINEA                                          GN      GIN     324
  974. GUINEA-BISSAU                                   GW      GNB     624
  975. GUYANA                                          GY      GUY     328
  976. HAITI                                           HT      HTI     332
  977. HEARD AND MC DONALD ISLANDS                     HM      HMD     334
  978. HONDURAS                                        HN      HND     340
  979. HONG KONG                                       HK      HKG     344
  980. HUNGARY                                         HU      HUN     348
  981. ICELAND                                         IS      ISL     352
  982. INDIA                                           IN      IND     356
  983. INDONESIA                                       ID      IDN     360
  984. IRAN (ISLAMIC REPUBLIC OF)                      IR      IRN     364
  985. IRAQ                                            IQ      IRQ     368
  986. IRELAND                                         IE      IRL     372
  987. ISRAEL                                          IL      ISR     376
  988. ITALY                                           IT      ITA     380
  989. JAMAICA                                         JM      JAM     388
  990. JAPAN                                           JP      JPN     392
  991. JORDAN                                          JO      JOR     400
  992. KAZAKHSTAN                                      KZ      KAZ     398  
  993. KENYA                                           KE      KEN     404
  994. KIRIBATI                                        KI      KIR     296
  995. KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF          KP      PRK     408
  996. KOREA, REPUBLIC OF                              KR      KOR     410
  997. KUWAIT                                          KW      KWT     414
  998. KYRGYZSTAN                                      KG      KGZ     417  
  999. LAO PEOPLE'S DEMOCRATIC REPUBLIC                LA      LAO     418
  1000. LATVIA                                          LV      LVA     428  
  1001. LEBANON                                         LB      LBN     422
  1002. LESOTHO                                         LS      LSO     426
  1003. LIBERIA                                         LR      LBR     430
  1004. LIBYAN ARAB JAMAHIRIYA                          LY      LBY     434
  1005. LIECHTENSTEIN                                   LI      LIE     438
  1006. LITHUANIA                                       LT      LTU     440  
  1007. LUXEMBOURG                                      LU      LUX     442
  1008. MACAU                                           MO      MAC     446
  1009. MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF      MK      MKD     807 (provis)
  1010. MADAGASCAR                                      MG      MDG     450
  1011. MALAWI                                          MW      MWI     454
  1012. MALAYSIA                                        MY      MYS     458
  1013. MALDIVES                                        MV      MDV     462
  1014. MALI                                            ML      MLI     466
  1015. MALTA                                           MT      MLT     470
  1016. MARSHALL ISLANDS                                MH      MHL     584
  1017. MARTINIQUE                                      MQ      MTQ     474
  1018. MAURITANIA                                      MR      MRT     478
  1019. MAURITIUS                                       MU      MUS     480
  1020. MAYOTTE                                         YT      MYT     175  
  1021. MEXICO                                          MX      MEX     484
  1022. MICRONESIA, FEDERATED STATES OF                 FM      FSM     583
  1023. MOLDOVA, REPUBLIC OF                            MD      MDA     498  
  1024. MONACO                                          MC      MCO     492
  1025. MONGOLIA                                        MN      MNG     496
  1026. MONTSERRAT                                      MS      MSR     500
  1027. MOROCCO                                         MA      MAR     504
  1028. MOZAMBIQUE                                      MZ      MOZ     508
  1029. MYANMAR                                         MM      MMR     104
  1030. NAMIBIA                                         NA      NAM     516
  1031. NAURU                                           NR      NRU     520
  1032. NEPAL                                           NP      NPL     524
  1033. NETHERLANDS                                     NL      NLD     528
  1034. NETHERLANDS ANTILLES                            AN      ANT     530
  1035. NEW CALEDONIA                                   NC      NCL     540
  1036. NEW ZEALAND                                     NZ      NZL     554
  1037. NICARAGUA                                       NI      NIC     558
  1038. NIGER                                           NE      NER     562
  1039. NIGERIA                                         NG      NGA     566
  1040. NIUE                                            NU      NIU     570
  1041. NORFOLK ISLAND                                  NF      NFK     574
  1042. NORTHERN MARIANA ISLANDS                        MP      MNP     580
  1043. NORWAY                                          NO      NOR     578
  1044. OMAN                                            OM      OMN     512
  1045. PAKISTAN                                        PK      PAK     586
  1046. PALAU                                           PW      PLW     585
  1047. PANAMA                                          PA      PAN     591
  1048. PAPUA NEW GUINEA                                PG      PNG     598
  1049. PARAGUAY                                        PY      PRY     600
  1050. PERU                                            PE      PER     604
  1051. PHILIPPINES                                     PH      PHL     608
  1052. PITCAIRN                                        PN      PCN     612
  1053. POLAND                                          PL      POL     616
  1054. PORTUGAL                                        PT      PRT     620
  1055. PUERTO RICO                                     PR      PRI     630
  1056. QATAR                                           QA      QAT     634
  1057. REUNION                                         RE      REU     638
  1058. ROMANIA                                         RO      ROM     642
  1059. RUSSIAN FEDERATION                              RU      RUS     643
  1060. RWANDA                                          RW      RWA     646
  1061. SAINT KITTS AND NEVIS                           KN      KNA     659
  1062. SAINT LUCIA                                     LC      LCA     662
  1063. SAINT VINCENT AND THE GRENADINES                VC      VCT     670
  1064. SAMOA                                           WS      WSM     882
  1065. SAN MARINO                                      SM      SMR     674
  1066. SAO TOME AND PRINCIPE                           ST      STP     678
  1067. SAUDI ARABIA                                    SA      SAU     682
  1068. SENEGAL                                         SN      SEN     686
  1069. SEYCHELLES                                      SC      SYC     690
  1070. SIERRA LEONE                                    SL      SLE     694
  1071. SINGAPORE                                       SG      SGP     702
  1072. SLOVAKIA (Slovak Republic)                      SK      SVK     703  
  1073. SLOVENIA                                        SI      SVN     705  
  1074. SOLOMON ISLANDS                                 SB      SLB     090
  1075. SOMALIA                                         SO      SOM     706
  1076. SOUTH AFRICA                                    ZA      ZAF     710
  1077. SPAIN                                           ES      ESP     724
  1078. SRI LANKA                                       LK      LKA     144
  1079. ST. HELENA                                      SH      SHN     654
  1080. ST. PIERRE AND MIQUELON                         PM      SPM     666
  1081. SUDAN                                           SD      SDN     736
  1082. SURINAME                                        SR      SUR     740
  1083. SVALBARD AND JAN MAYEN ISLANDS                  SJ      SJM     744
  1084. SWAZILAND                                       SZ      SWZ     748
  1085. SWEDEN                                          SE      SWE     752
  1086. SWITZERLAND                                     CH      CHE     756
  1087. SYRIAN ARAB REPUBLIC                            SY      SYR     760
  1088. TAIWAN, PROVINCE OF CHINA                       TW      TWN     158
  1089. TAJIKISTAN                                      TJ      TJK     762  
  1090. TANZANIA, UNITED REPUBLIC OF                    TZ      TZA     834
  1091. THAILAND                                        TH      THA     764
  1092. TOGO                                            TG      TGO     768
  1093. TOKELAU                                         TK      TKL     772
  1094. TONGA                                           TO      TON     776
  1095. TRINIDAD AND TOBAGO                             TT      TTO     780
  1096. TUNISIA                                         TN      TUN     788
  1097. TURKEY                                          TR      TUR     792
  1098. TURKMENISTAN                                    TM      TKM     795  
  1099. TURKS AND CAICOS ISLANDS                        TC      TCA     796
  1100. TUVALU                                          TV      TUV     798
  1101. UGANDA                                          UG      UGA     800
  1102. UKRAINE                                         UA      UKR     804
  1103. UNITED ARAB EMIRATES                            AE      ARE     784
  1104. UNITED KINGDOM                                  GB      GBR     826
  1105. UNITED STATES                                   US      USA     840
  1106. UNITED STATES MINOR OUTLYING ISLANDS            UM      UMI     581
  1107. URUGUAY                                         UY      URY     858
  1108. UZBEKISTAN                                      UZ      UZB     860  
  1109. VANUATU                                         VU      VUT     548
  1110. VATICAN CITY STATE (HOLY SEE)                   VA      VAT     336
  1111. VENEZUELA                                       VE      VEN     862
  1112. VIET NAM                                        VN      VNM     704
  1113. VIRGIN ISLANDS (BRITISH)                        VG      VGB     092
  1114. VIRGIN ISLANDS (U.S.)                           VI      VIR     850
  1115. WALLIS AND FUTUNA ISLANDS                       WF      WLF     876
  1116. WESTERN SAHARA                                  EH      ESH     732
  1117. YEMEN                                           YE      YEM     887
  1118. YUGOSLAVIA                                      YU      YUG     891
  1119. ZAIRE                                           ZR      ZAR     180
  1120. ZAMBIA                                          ZM      ZMB     894
  1121. ZIMBABWE                                        ZW      ZWE     716
  1122. */
  1123.  
  1124. #if PRAGMA_ALIGN_SUPPORTED
  1125. #pragma options align=reset
  1126. #endif
  1127.  
  1128. #if PRAGMA_IMPORT_SUPPORTED
  1129. #pragma import off
  1130. #endif
  1131.  
  1132. #ifdef __cplusplus
  1133. }
  1134. #endif
  1135.  
  1136. #endif /* __TEXTCOMMON__ */
  1137.  
  1138.